<html>
<head>
<title>NOT Gate</title>
<link rel="stylesheet" type="text/css" href="../../help.css">
</head>

<body bgcolor="FFFFFF">

<h1><img  align="center" src="../../../icons/notGate.gif" width="32" height="32"> <em>NOT Gate</em></h1>

<p><table>
<tr><td><strong>Library:</strong></td>
	<td><a href="index.html">Gates</a></td></tr>
<tr><td><strong>Introduced:</strong></td>
	<td>2.0 Beta 1</td></tr>
<tr><td valign="top"><strong>Appearance:</strong></td>
	<td valign="top"><table><tbody>
	<tr><th align="left">Shaped:</th><td><img src="../../../img-libs/not-shaped.png" width="34" height="16"></td></tr>
	<tr><th align="left">Rectangular:</th><td><img src="../../../img-libs/not-rect.png" width="34" height="21"></td></tr>
	<tr><th align="left">DIN 40700:</th><td><img src="../../../img-libs/not-din.gif" width="24" height="24"></td></tr>
	</tbody></table></td></tr>
</table></p>

<h2>Behavior</h2>

<p>The NOT Gate emits the complement of whatever input
it receives.
The truth table for a NOT gate is the following.</p>
<center><table>
<tr><th><var>x</var></th><th>out</th></tr>
<tr><td align="center">0</td><td align="center">1</td></tr>
<tr><td align="center">1</td><td align="center">0</td></tr>
</table></center>
<p>If the input is unspecified (i.e., floating) or an error, then the output
will be an error.</p>

<p>A multi-bit NOT gate will perform the above transformation bitwise on
its input.</p>

<h2>Pins (assuming component faces east)</h2>

<dl>

<dt>West edge (input, bit width according to Data Bits attribute)</dt>
<dd>The component's input.</dd>

<dt>East edge (output, bit width according to Data Bits attribute)</dt>
<dd>The output, whose value is the complement of the input value.</dd>

</dl>

<h2>Attributes</h2>

<p>When the component is selected or being added,
Alt-0 through Alt-9 alter its <q>Data Bits</q> attribute
and the arrow keys alter its <q>Facing</q> attribute.</p>

<dl>

<dt>Facing</dt>
<dd>The direction of the component (its output relative to its input).</dd>

<dt>Data Bits</dt>
<dd>The bit width of the component's input and output.</dd>

<dt>Gate Size</dt>
<dd>Determines whether to draw a larger or a smaller version of the
component.</dd>

<dt>Output Value</dt>
<dd>Indicates the set of possible outputs.  When "0/1" is selected, both 0 and 1
are possible outputs and the component behaves according to the table above.
When "0/floating" is selected, the component will output a floating X value
whenever it would normally output a 1. Similarly, when "floating/1" is selected,
the component will output a floating X value whenever it would normally output
a 0. The floating output options allow for wired-or and wired-and connections,
as illustrated below: At left, the Not Gates' Output Value attributes are floating/1
and the resistor pulls to 0, giving wired-or behavior; at right, the Not Gates'
Output Value attributes are 0/floating and the resistor pulls to 1, giving
wired-and behavior.
<center><img src="../../../img-libs/wand-wor-not.png" width="220" height="91"></center></dd> 

<dt>Label</dt>
<dd>The text within the label associated with the gate.</dd>

<dt>Label Font</dt>
<dd>The font with which to render the label.</dd>

</dl>

<h2>Poke Tool Behavior</h2>

<p>None.</p>

<h2>FPGA Synthesis</h2><p>All basic gates support VHDL and Verilog synthesis.
Floating outputs (selected with 'Output Value' attribute) are not supported for
synthesis.</p>

<p><a href="../index.html">Up to <em>Library Reference</em></a></p>

</body>
</html>
